BUFFER <in_cover> <out_cover> {buffer_item} {buffer_table} {buffer_distance}
       {fuzzy_tolerance} {LINE | POLY | POINT | NODE}
 
creates buffer polygons around specified input coverage features.
 
arguments
 
<in_cover> - the coverage containing features to be buffered.
 
<out_cover> - the coverage to be created.
 
{buffer_item} - an item in the feature attribute table of <in_cover> whose
value is used as the feature's buffer distance.  If a buffer table is used, the
{buffer_item} functions as a lookup item in {buffer_table}.
 
{buffer_table} - an INFO lookup table which lists a buffer distance for each
{buffer_item}.  A {buffer_table} can be specified only if {buffer_item} is
specified.  The {buffer_table} contains at least two items.
 
{buffer_item} - defined the same as {buffer_item} in the <in_cover> feature
attribute table.
 
DIST - the buffer distance for each {buffer_item} value.  DIST must be defined
as a numeric item (i.e., N, I, F, or B).  A lookup table will categorize item
values.  The use of lookup tables is described in the manual Managing Tabular
Data.
 
{buffer_distance} - the distance used to create buffer zones around <in_cover>
features when {buffer_item} or {buffer_item} and {buffer_table} are not
specified.  The default distance is 0.125 coverage units.  For polygon
features, if a negative buffer distance is used, buffers will be generated on
the inside of polygons.
 
{fuzzy_tolerance} - the minimum distance between coordinates in the output
coverage.  A value of 0 will not be accepted.  The default fuzzy tolerance is
determined as follows:
 
1) Tolerance values are read from the coverage TOL file if it exists.
2) If no TOL file exists and the width of the BND is between 1 and   100, the
   tolerance is 0.002.
3) Otherwise, the tolerance is 1/10,000 of the width or height of the   BND,
   whichever is greater.
 
{LINE | POLY | POINT | NODE} - the feature class to be buffered:
 
LINE - arcs will be buffered.  This is the default option.
 
POLY - polygons will be buffered.
 
POINT - points will be buffered.
 
NODE - nodes will be buffered.
 
notes
 
Small sliver polygons may be created by BUFFER.  They can cause
problems when coded as non-buffer areas inside buffer zones.  Remove them with
ELIMINATE.
 
Features will not be buffered if their buffer distance is 0.  If you do not
want to buffer a feature in the input coverage, give it a buffer distance value
of 0 in {buffer_item} or for DIST in {buffer_table}.
 
Negative and positive distances can be used for buffer distances with the poly
option.  It is possible to shrink some polygons and grow others in the same
coverage when the {buffer_item} contains positive and negative numbers.
 
The coordinate precision of the output coverage is determined by the current
processing rule as set by the PRECISION command.  If the processing rule has
not yet been established using PRECISION during the current ARC/INFO
session, then the processing rule will be HIGHEST.  This means that BUFFER will
create an output coverage in the same precision as the input coverage.
 
On single-precision coverages, BUFFER calculates a minimum tolerance based on
the mathematical precision of the coverage (based on the width of the BND
and the number of decimal places).  If the calculated minimum tolerance is
greater than the fuzzy tolerance entered on the command line, the calculated
minimum tolerance is used.
 
If the calculated tolerance is greater than your application allows, an
alternative to CLEAN is to run INTERSECTERR at ARC or ARCEDIT, correct the
intersecting arcs in ARCEDIT, then run BUILD.
 
When performing a BUFFER on a coverage that contains island polygons, all
the polygons with a buffer distance greater than zero get buffered.  However,
since the island's buffer is entirely within its surrounding polygon's buffer,
it is dissolved into the surrounding polygon during BUFFER's dissolve phase and
the island buffers will not be visible.
 
Nodes can be buffered on coverages with or without an NAT.
 
The projection file (PRJ) will be copied to the output coverage.
 
discussion
 
BUFFER creates a new output coverage by generating buffer zones
around input coverage features.  Input coverage features can be polygons,
lines, points, or nodes.  Output coverage features will always be polygons.
 
Polygon topology is created for the output coverage.  New label points are
created in each polygon.  Each polygon User-ID is equal to the polygon's
internal number minus one.  Each polygon is also flagged according to the
type of area it represents.
 
 100 - Polygon(s) representing a buffer zone
 1 - Polygon(s) outside the buffer zone
 
Flags for the buffer zones are stored in an item called INSIDE in the output
coverage PAT.  It will be defined as 4,5,B.
 
Buffer zone sizes can be controlled in two ways:  by using the buffer distance
to specify a single size for all buffer zones, or by specifying a buffer item
and, optionally, a buffer table to generate multiple buffer sizes.  When only a
buffer distance is specified, buffer zones of the same width are generated
around all input coverage features.  The width of the buffer zone is specified
by the buffer distance.
 
When a buffer item is specified, the value of the buffer item associated with
each feature is used to determine the width of the buffer zone generated
around the side of each feature.  The width of each buffer zone is the
{buffer_item} value or a distance value taken from the {buffer_table}.
